package reusing;
import static net.mindview.util.Print.*;

import java.util.Vector;
class WithFials {
	private final void f(){
		print("WithFials.f()");
	}
	private void g(){
		print("WithFials.g()");
	}
}
class OverridingPrivate extends WithFials{
	private final void f() {
		print("OverridingPrivate.f()");
	}
	private void g(){
		print("OverridingPrivate.g()");
	}
}
class OverridingPrivate2 extends OverridingPrivate{
	public final void f() {
		print("OverridingPrivate2.f()");
	}
	public void g(){
		print("OverridingPrivate2.g()");
	}
}
public class FinalOverridingIllusion {
     public static void main(String[] args) {
    	 OverridingPrivate2 op2 = new OverridingPrivate2();
    	 op2.f();
    	 op2.g();
    	 OverridingPrivate op = op2;
    	 //Vector<E>
	}
}
